1d454cbe3e44d789a639df9e23b3912cc63e47ee,so-virtualobject/src/main/java/com/pineone/icbms/so/virtualobject/logic/VirtualObjectManagerLogic.java,VirtualObjectManagerLogic,requestControlDevice,#String#String#String#,95

Before Change


        sessionStore.updateSession(session);
        VirtualObject virtualObject = searchVirtualObject(voId);
        if(virtualObject == null){
            session.insertSessionData(DefaultSession.VIRTUALOBJECT_RESULT, DefaultSession.CONTROL_ERROR);
            // DB� Session� 저장.
            sessionStore.updateSession(session);
            return DefaultSession.CONTROL_ERROR;
        } else if(VirtualObject.FUNCTIONLITY_ADMIN_NOTI.equals(virtualObject.getFunctionality())) {
            session.insertSessionData(DefaultSession.VIRTUALOBJECT_RESULT, VirtualObject.FUNCTIONLITY_ADMIN_NOTI);
            // DB� Session� 저장.
            sessionStore.updateSession(session);
            return VirtualObject.FUNCTIONLITY_ADMIN_NOTI;
        }

        // 해당 Device ID를 �출
        String deviceId = virtualObject.getDeviceId();
        // operation -> command SDA 확�.고려.. 형�으로 변경.
        //        return deviceManager.deviceExecute(deviceId, operation);
        logger.debug("Device ID = " + deviceId + " Operation = " + operation + " Session ID = " + sessionId);
        session.insertSessionData(DefaultSession.VIRTUALOBJECT_RESULT, DefaultSession.CONTROL_EXECUTION);
        sessionStore.updateSession(session);
        return virtualObjectControlProxy.executeDevice(deviceId, operation, sessionId);
    }

After Change


        logger.debug("VirtualObject Id = " + voId + " Operation = " + operation + " Session ID = " + sessionId);

        // DB�서 Session� 검색
        Session session = null;
        if(sessionId != null){
            session = sessionStore.retrieveSessionDetail(sessionId);
        }

        if(session == null){
            session = new DefaultSession();
            sessionId =  session.getId();
        }

        sessionDataUpdate(sessionStore, session, voId, DefaultSession.VIRTUALOBJECT_KEY);

        VirtualObject virtualObject = searchVirtualObject(voId);
        if(virtualObject == null){
            sessionDataUpdate(sessionStore, session, "The virtualObject does not exist.", DefaultSession.VIRTUALOBJECT_RESULT);
            logger.debug("The virtualObject does not exist.");
            return "The virtualObject does not exist.";
        } else if(ClientProfile.DEVICE_SERVICE_NOTI_TYPE.equals(virtualObject.getFunctionality())) {